package com.ethink.warehouse.facade.impl;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ethink.warehouse.api.MateInventoryOtherOutLogDetailFacade;
import com.ethink.warehouse.api.info.MateInventoryOtherOutLogDetailInfo;
import com.ethink.warehouse.api.request.MateInventoryOtherOutLogDetailAddRequest;
import com.ethink.warehouse.api.request.MateInventoryOtherOutLogDetailQueryRequest;
import com.ethink.warehouse.api.request.MateInventoryOtherOutLogDetailUpdateRequest;
import com.ethink.warehouse.api.response.MateInventoryOtherOutLogDetailAddResponse;
import com.ethink.warehouse.api.response.MateInventoryOtherOutLogDetailDeleteResponse;
import com.ethink.warehouse.api.response.MateInventoryOtherOutLogDetailUpdateResponse;
import com.ethink.warehouse.service.MateInventoryOtherOutLogDetailService;
import java.util.List;

/**
 * 其他出库明细 Facade接口实现
 *
 * @author default
 * @date 2023-02-08
 */
@RestController
@Slf4j
@RequestMapping("warehouse-service/facade/v1/mateInventoryOtherOutLogDetail")
public class MateInventoryOtherOutLogDetailFacadeImpl implements MateInventoryOtherOutLogDetailFacade {

    @Autowired
    private MateInventoryOtherOutLogDetailService mateInventoryOtherOutLogDetailService;

    @Override
    public Page<MateInventoryOtherOutLogDetailInfo> queryMateInventoryOtherOutLogDetail(MateInventoryOtherOutLogDetailQueryRequest request) {
        return mateInventoryOtherOutLogDetailService.queryMateInventoryOtherOutLogDetail(request);
    }

    @Override
    public MateInventoryOtherOutLogDetailInfo getMateInventoryOtherOutLogDetailById(Long mateInventoryOtherOutLogDetailId) {
        return mateInventoryOtherOutLogDetailService.getMateInventoryOtherOutLogDetailById(mateInventoryOtherOutLogDetailId);
    }

    @Override
    public List<MateInventoryOtherOutLogDetailInfo> listMateInventoryOtherOutLogDetail(MateInventoryOtherOutLogDetailQueryRequest request) {
        return mateInventoryOtherOutLogDetailService.listMateInventoryOtherOutLogDetail(request);
    }

    @Override
    public MateInventoryOtherOutLogDetailAddResponse addMateInventoryOtherOutLogDetail(MateInventoryOtherOutLogDetailAddRequest request) {
        return mateInventoryOtherOutLogDetailService.addMateInventoryOtherOutLogDetail(request);
    }

    @Override
    public MateInventoryOtherOutLogDetailUpdateResponse updateMateInventoryOtherOutLogDetail(MateInventoryOtherOutLogDetailUpdateRequest request) {
        return mateInventoryOtherOutLogDetailService.updateMateInventoryOtherOutLogDetail(request);
    }

    @Override
    public MateInventoryOtherOutLogDetailDeleteResponse deleteMateInventoryOtherOutLogDetail(Long mateInventoryOtherOutLogDetailId) {
        return mateInventoryOtherOutLogDetailService.deleteMateInventoryOtherOutLogDetail(mateInventoryOtherOutLogDetailId);
    }

}